package com.zmc.third.application;

import com.zmc.common.domain.resp.order.RefundResp;
import com.zmc.common.utils.R;
import com.zmc.third.infrastructure.bean.resp.PayNotifyResp;
import com.zmc.third.infrastructure.bean.resp.PayQueryResp;
import com.zmc.third.infrastructure.bean.vo.PayCodeVo;
import com.zmc.third.infrastructure.bean.vo.PayQueryVo;
import com.zmc.common.domain.vo.third.PayRefundVo;

import javax.servlet.http.HttpServletRequest;
import javax.xml.bind.UnmarshallerHandler;
import java.util.Map;

/**
 * @Author：zmc
 * @Date：2024/11/8 21:09
 */
public interface PayApplicationService {

    /**
     * 获取支付码
     * */
    R getPayChannel(PayCodeVo vo);


    /**
     * 查询订单支付状态
     * */
    PayQueryResp queryPay(PayQueryVo vo);

    /**
     * 支付回调
     * */
    PayNotifyResp payNotify(String payType, Map<String, String> params);

    /**
     * 支付退款
     * */
    RefundResp payRefund(PayRefundVo vo);

}
